Method for generating and playing object-based audio contents and computer readable recording medium for recoding data having file format structure for object-based audio service

ABSTRACT

Provided are a method of generating and playing an object-based audio content that may effectively store preset information about an object-based audio content, and a computer-readable recording medium for storing data having a file format structure for an object-based audio service. The method of generating the object-based audio content may include: receiving a plurality of audio objects ( 310 ) generating at least one preset using the plurality of audio objects ( 320 ) and storing a preset parameter with respect to an attribute of the at least preset and the plurality of audio objects ( 330 ). The preset parameter may be stored in a form of a box that is defined in a media file format about the object-based audio content. Through this, it is possible to effectively store a preset about a plurality of audio objects.

RELATED APPLICATIONS

This application is a 35 U.S.C. §371 national stage filing of PCTApplication No. PCT/KR2009/002129 filed on Apr. 23, 2009, which claimspriority to, and the benefit of, Korean Patent Application No.10-2008-0037498 filed on Apr. 23, 2008; Korean Patent Application No.10-2008-0040912 filed on Apr. 30, 2008; Korean Patent Application No.10-2008-0060493 filed on Jun. 25, 2008; U.S. Provisional Application No.61/081,093 filed on Jul. 16, 2008; Korean Patent Application No.10-2008-0114413 filed on Nov. 18, 2008 and Korean Patent Application No.10-2009-0034992 filed on Apr. 22, 2009. The contents of theaforementioned applications are hereby incorporated by reference.

TECHNICAL FIELD

The present invention relates to a method of generating and playing anobject-based audio content that may effectively store preset informationabout an object-based audio content, and a computer-readable recordingmedium for storing data having a file format structure for anobject-based audio service.

BACKGROUND ART

An existing audio signal provided through broadcasting services such asa television (TV) broadcasting service, a radio broadcasting service, aDigital Multimedia Broadcasting (DMB) service, and the like, may bestored and be transmitted in a single audio signal in a manner thataudio signals obtained from various types of sound sources are mixed.

In this environment, a user may adjust a strength of the entire audiosignal but may not control a characteristic of the audio signal for eachsound source, for example, adjusting of the strength of the audio signalfor each sound source that is included in the corresponding audiosignal.

However, when an audio content is created, the audio signal for eachsound source may not be synthesized but may be independently stored. Inthis case, a content play terminal enables the user to listen to theaudio content while controlling the strength of the audio signal foreach sound source.

An audio service that may independently store and transmit a pluralityof audio signals in a storage/transmission end, and enables the user tolisten to a corresponding audio content while appropriately controllingeach of the audio signal in a receiver, for example, a content playdevice is referred to as an object-based audio service.

The above object-based audio service defines attributes such as alocation of each object, a strength of a sound, an acousticcharacteristic according to locations of objects, and the like, using apreset, and provides the defined attributes. Accordingly, the user mayuse the attributes to play an audio content. Specifically, when aplurality of preset audio information is generated and is included in afile, a reception side may more effectively use the object-based audioservice.

An existing International Standardization Organization base media fileformat (ISO-BMFF) defines a file structure that includes all of varioustypes of media such as audio, video, still images, and the like. Thefile structure may be flexible and extendable with respect to aninterchange, a management, an edition, and a presentation of media.

When a storage or a transmission is performed by adding an audio trackand preset information to the ISO-BMFF, it is possible to furthereffectively provide the object-based audio service.

DISCLOSURE OF INVENTION Technical Problem

An aspect of the present invention provides a method of generating anobject-based audio content that may effectively store a preset about aplurality of audio objects.

Technical Solution

According to an aspect of the present invention, there is provided amethod of generating an object-based audio content, the methodincluding: receiving a plurality of audio objects; generating at leastone preset using the plurality of audio objects; and storing a presetparameter with respect to an attribute of the at least one preset andthe plurality of audio objects. The preset parameter may be stored in aform of a box that is defined in a media file format about theobject-based audio content.

Here, the media file format may be in a structure of an InternationalStandardization Organization base media file format (ISO-BMFF).

Also, the box may include a moov box, the moov box includes a first boxdefined in the moov box, and the first box includes a second box definedin the first box. The preset parameter may include a first presetparameter and a second preset parameter, and the first preset parameterincludes at least one of a number of the at least one preset and apreset identification (ID) of any one preset of the at least one preset.The first preset parameter may be stored in the first box, and thesecond preset parameter may be stored in the second box.

According to another aspect of the present invention, there is provideda method of playing an object-based audio content, the method including:recovering a plurality of audio objects and at least one preset from theobject-based audio content; mixing the plurality of audio objects, basedon the at least one preset, to generate an output audio signal; andplaying the output audio signal. Each of the at least one preset mayinclude a preset parameter. The preset parameter may be stored in theobject-based audio content in a form of a box that is defined in a mediafile format about the object-based audio content.

According to still another aspect of the present invention, there isprovided a computer-readable recording medium storing data with a fileformat structure for an object-based audio service, including: an ftypbox to store standard information of an object-based audio content; anmdat box to store a plurality of audio objects that constitute theobject-based audio content; and a moov box to store metadata thatpresents the stored plurality of audio objects. A preset parameter aboutat least one preset generated using the plurality of audio objects maybe stored in any one of the ftyp box and the moov box.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 illustrates a basic structure of a media file format for storingan object-based audio content according to an embodiment of the presentinvention;

FIG. 2 illustrates a relationship between a track and a channelaccording to an embodiment of the present invention;

FIG. 3 is a flowchart illustrating a method of generating anobject-based audio content according to an embodiment of the presentinvention;

FIG. 4 illustrates a structure of ‘moov’ according to an embodiment ofthe present invention;

FIG. 5 is a flowchart illustrating a method of playing an object-basedaudio content according to an embodiment of the present invention;

FIG. 6 is a flowchart illustrating a method of playing an object-basedaudio content according to another embodiment of the present invention;and

FIGS. 7 and 8 illustrate a structure of a file format for storing anobject-based audio content including description information accordingto an embodiment of the present invention.

MODE FOR THE INVENTION

Reference will now be made in detail to embodiments of the presentinvention, examples of which are illustrated in the accompanyingdrawings, wherein like reference numerals refer to the like elementsthroughout. The embodiments are described below in order to explain thepresent invention by referring to the figures.

FIG. 1 illustrates a basic structure of a media file format for storingan object-based audio content according to an embodiment of the presentinvention.

Referring to FIG. 1, the structure of the media file format for storingthe object-based audio content may include an ftyp box (hereinafter,‘ftyp’) to store standard information of the object-based audio content,that is, type information of an object-based audio content file, a moovbox (hereinafter, ‘moov’) to store metadata, for example, a decodingtime, for a presentation of a plurality of audio object data thatconstitute the object-based audio content, and an mdat box (hereinafter,‘mdat’) to store the plurality of audio object data.

‘ftyp’ and ‘moov’ may include a meta box (hereinafter, ‘meta’).Generally, descriptive metadata about the plurality of audio object datastored in ‘mdat’ may be stored in ‘meta’.

Here, the media file format for storing the object-based audio contentmay be in the structure of an International Standardization Organizationbase media file format (ISO-BMFF).

Hereinafter, a method of storing a plurality of audio objects and apreset associated with playing of an object-based audio contentaccording to the ISO-BMFF to thereby generate the object-based audiocontent will be described. However, as described above, the method ofgenerating the object-based audio content is not limited to theobject-based audio content having the structure of the ISO-BMFF and thusmay be extendable with respect to a multi-channel audio content that isin a structure of a media file format to store multimedia data such asan MP4 file and the like.

Prior to describing the method of generating the object-based audiocontent according to an embodiment of the present invention, a presetparameter to indicate an attribute of a preset storing the object-basedaudio content will be described. The preset parameter may include atleast one of the following preset information.

1. Preset name, preset identification (ID):

The ‘preset name’ denotes a string corresponding to a preset, and the‘preset ID” denotes an integer corresponding to the preset.

2. Number of presets, default preset ID:

The ‘number of presets’ denotes a number of presets included in theobject-based audio content.

The ‘default preset ID’ denotes a preset ID that needs to be mostinitially played in an initial state where a user interaction does notexist, when the object-based audio content is played. The ‘defaultpreset ID’ may correspond to any one of preset IDs included in theobject-based audio content.

3. Whether to display preset information:

The ‘whether to display preset information’ denotes informationregarding whether to display preset information for a user when theobject-based audio content is played. The preset information mayinclude, for example, volume information or frequency gain informationfor each input track or each input channel.

4. Editing probability of a preset:

The ‘editing probability of a preset’ denotes information regardingwhether a user may edit a preset when the object-based audio content isplayed.

5. Number of input tracks, input track ID, number of input channels foreach input track:

The ‘number of input tracks’ denotes a number of input tracks that arestored in the object-based audio content. Here, each of the input tracksmay correspond to a sound source. Specifically, when the object-basedaudio content includes a vocal, a piano, and a drum, each of the vocal,the piano, and the drum may constitute a single track.

The ‘input track ID’ denotes an integer corresponding to each of theinput tracks.

The ‘number of input channels for each input track’ denotes a number ofchannels included in each of the input tracks.

Hereinafter, a relationship between a track and a channel will bedescribed with reference to FIG. 2.

FIG. 2 illustrates a relationship between a track and a channelaccording to an embodiment of the present invention.

FIG. 2 illustrates a vocal track 210, a piano track 220, and a drumtrack 230.

When recording sound sources and in this instance, recording each of thesound sources using 2-channel, that is, a stereo channel, each track mayinclude two channels. Specifically, when recording a vocal, a piano, anda drum using 2-channel, the vocal track 210 may include a first channel211 and a second channel 212, the piano track 220 may include a firstchannel 221 and a second channel 222, and the drum track 230 may includea first channel 231 and a second channel 232. Although all the tracksinclude the same number of channels in FIG. 2, a number of channelsincluded in each track may be different.

In this instance, when a creator of the object-based audio content setsa preset for each track, a plurality of audio objects may correspond tothe tracks, respectively. When the creator sets the preset for eachchannel, the plurality of audio objects may correspond to the channels,respectively.

6. Output channel type, number of output channel:

The ‘output channel type’ denotes information regarding via whichchannel the object-based audio object is played. The ‘number of outputchannels’ denotes a number of output channels according to the outputchannel type.

7. Number of frequency bands, center frequency of each of the frequencybands, bandwidth of each of the frequency bands for sound equalization:

The ‘number of frequency bands’ denotes a number of frequency bands tobe applied with a sound equalization for compensating for transformationof a signal that may occur, while amplifying or transmitting the signal.

8. Volume information for each input track or each input channel:

The ‘volume information’ denotes information about a volume of each ofaudio objects. When an audio object corresponds to an input track, the‘volume information for each input track’ may be stored in theobject-based audio content. When the audio object corresponds to aninput channel, the ‘volume information for each input channel’ may bestored in the object-based audio content.

9. Frequency gain information for each input track or each inputchannel:

The ‘frequency gain information’ denotes information about a frequencygain when applying the sound equalization. When an audio objectcorresponds to an input track, the ‘frequency gain information for eachinput track’ may be stored in the object-based audio content. When theaudio object corresponds to an input channel, the ‘frequency gaininformation for each input channel’ may be stored in the object-basedaudio content.

10. Preset global volume information:

The ‘preset global volume information’ denotes information for adjustingthe global volume of a plurality of audio objects.

11. Magnitude of a sound image and angle of the sound image:

The ‘magnitude of the sound image’ and the ‘angle of the sound image’denote a magnitude value of the sound image and an angle value of thesound image, respectively. The sound image is formed by a plurality ofchannels stored in the object-based audio content.

The creator of the object-based audio content may generate theobject-based audio content using various types of schemes by store thepreset parameter including at least one of the above listed information,according to the ISO-BMFF.

FIG. 3 is a flowchart illustrating a method of generating anobject-based audio content according to an embodiment of the presentinvention.

In operation 310, the object-based audio content generating method mayreceive a plurality of audio objects.

In operation 320, the object-based audio content generating method maygenerate at least one preset using the plurality of audio objects.

In operation 330, the object-based audio content generating method maystore a preset parameter with respect to the plurality of audio objectsand an attribute of the at least one preset. As described above, thepreset parameter may include at least one of the above listedinformation.

In this case, the preset parameter may be stored in a form of a box thatis defined in a media file format about the object-based audio content.

Hereinafter, operation 330 of storing the preset parameter will bedescribed in detail.

Store a Preset Parameter in ‘meta’ Included in ‘ftyp’ or ‘meta’ Includedin ‘moov’:

According to an embodiment of the present invention, a preset parametermay be stored in ‘meta’ included in ‘ftyp’ (hereinafter, a first‘meta’), or in ‘meta’ included in ‘moov’ (hereinafter, a second ‘meta’).

Specifically, as described above, description information or descriptivemetadata indicating general information about an object-based audiocontent, for example, a song title, a singer, an album name, and thelike, may be stored in the first ‘meta’ or the second ‘meta’. A presetparameter may be stored together with the description information.

Store a Preset Parameter in ‘meta’ Different from ‘meta’ StoringDescription Information:

According to an embodiment of the present invention, a preset parametermay be stored in ‘meta’ different from ‘meta’ storing descriptioninformation about an object-based audio content.

The description information may be information associated withidentifying of the object-based audio content and the preset parametermay be information associated with playing of the object-based audiocontent. Specifically, since an attribute of the description informationis different from an attribute of the preset parameter, it may bedesirable to separately handle the description information and thepreset parameter.

For example, the description information may be stored in a first ‘meta’and the preset parameter may be stored in a second ‘meta’.

Since an ISO-BMFF defines that only a single ‘meta’ may exist in asingle level, each of ‘ftyp’ and ‘moov’ may include only the single‘meta’ in a lower level. Accordingly, to separately store thedescription information and the preset parameter, the descriptioninformation and the preset parameter may need to be stored in ‘meta’existing in different levels, that is, in the first ‘meta’ and thesecond ‘meta’. In this case, since the preset parameter has an attributeof metadata for presentation, the description information may be storedin the first ‘meta’ and the preset parameter may be stored in the second‘meta’.

As another example, the description information may be stored in ‘meta’,that is, the first ‘meta’ and the second ‘meta’, as is. The presetparameter may be stored in a meco box (hereinafter, ‘meco’) included in‘ftyp’ or ‘moov’.

Since ‘meco’ is an additional metadata contain box that is defined bythe ISO-BMFF, different metadata that is not defined by the ISO-BMFF maybe stored in ‘meco’. Accordingly, the preset parameter may be stored inany one of ‘meco’ included in ‘ftyp’ or ‘meco’ included in ‘moov’.

Store a Preset Parameter in a Box Newly Defined in ‘moov’

According to an embodiment of the present invention, a preset parametermay be stored in a box that is newly defined in ‘moov’.

As described above, since an attribute of the preset parameter isdifferent from an attribute of description information, it may bedesirable to separately handle the preset parameter and the descriptioninformation. Also, since the preset parameter includes an attribute ofmetadata for presentation, it may be desirable to store the presetparameter in ‘moov’. Accordingly, in order to effectively handle thepreset parameter, it may be desirable to define a new box in ‘moov’ andto store the preset parameter in the newly defined box.

FIG. 4 illustrates a structure of ‘moov’ according to an embodiment ofthe present invention.

As shown in FIG. 4, two boxes may be defined within ‘moov’.

A first box is a box defined in ‘moov’. The first box may store a firstpreset parameter that is a preset parameter indicating the entireinformation of the preset. Hereinafter, the first box is referred to asa preset container box, that is, ‘prco’.

For example, the first preset parameter may include at least one of thenumber of presets and the default preset ID, which are described above.The default preset ID denotes a preset ID to be most initially played inan initial state where a user interaction does not exist, when anobject-based audio content is played. The default preset ID maycorrespond to any one preset ID among preset IDs that are included inthe object-based audio content.

A second box is a box defined in ‘prco’. The second box may store asecond preset parameter that is a preset parameter about an attribute ofthe preset.

For example, the second preset parameter may include the remaininginformation excluding the number of presets and the default preset IDfrom the above listed information. Hereinafter, the second box isreferred to as a preset box, that is, ‘prst’.

‘prco’ may include ‘prst’ corresponding to the number of presets thatare included in the object-based audio content. When the preset is notstored in the object-based audio content, ‘prst’ may not exist in‘prco’.

For example, ‘prst’ may include the preset parameter that contains theremaining preset information excluding the number of presets and thedefault preset ID from the above listed preset information.

According to an embodiment of the present invention, when ‘moov’includes ‘prco’ and ‘prst’, the structure of the ISO-BMFF may beexpressed by the following Table 1:

TABLE 1 ftyp file type and compatibility moov container for all themetadata mvhd movie header, overall declarations trak container for anindividual track or stream tkhd track header, overall information aboutthe track tref track reference container edts edit list container elstan edit list mdia container for the media information in a track mdhdmedia header, overall information about the media hdlr handler, declaresthe media (handler) type minf media information container smhd soundmedia header, overall information (sound track only) hmhd hint mediaheader, overall information (hint track only) nmhd Null media header,overall information (some tracks only) dinf data information box,container dref data reference box. declares source(s) of media data intrack stbl sample table box, container for the time/space map stsdsample descriptions (codec types, initialization etc.) stts (decoding)time-to-sample stsc sample-to-chunk, partial data-offset informationstsz sample sizes (framing) stz2 compact sample sizes (framing) stcochunk offset, partial data-offset information co64 64-bit chunk offsetprco container for the presets prst preset box, container for the presetinformation mdat media data container free free space skip free spacemeta Metadata hdlr handler, declares the metadata (handler) type dinfdata information box, container Dref data reference box, declaressource(s) of metadata items iloc item location iinf item information xmlXML container bxml binary XML container pitm primary item reference

Hereinafter, embodiments of syntax and semantics of ‘prco’ and ‘prst’will be described in detail.

An embodiment of syntax of ‘prco’ may be expressed by the followingTable 2:

TABLE 2 Preset Container Box Box type: ‘prco’ Container: Movie Box(‘moov’) Mandatory: Yes Quantity: Exactly one syntax aligned(8) classPresetContainerBox extends Box(‘prco’){ unsigned int(8) num_preset;unsigned int(8) default_preset_ID; }

Semantics according to the syntax of the above Table 2 may follow as:

‘num_preset’ denotes a number of presets included in ‘prco’.

‘default_preset_ID’ denotes the default preset ID. When a creator doesnot set ‘default_preset_ID’, a preset ID of a preset with a smallestpreset ID value may be set as ‘default_preset_ID’.

When ‘default_preset_ID’ is set to ‘0’, the object-based audio contentmay be played according to a preset stored in a bitstream of audioobjects, which are encoded and are stored using an MPEG-D spatial audioobject coding (SAOC) technology, among a plurality of audio objectsincluded in the object-based audio content. It will be further describedin detail later with reference to FIG. 6.

General syntax of ‘prst’ may be expressed by the following Table 3:

TABLE 3 Preset Box Box type: ‘prst’ Container: Preset Container Box(‘prco’) Mandatory: No Quantity: zero or more syntax aligned(8) classPresetBox extends FullBox(‘prst’, version=0, flags){ unsigned int(8)preset_ID; unsigned int(8) num_preset_track; unsigned int(8)preset_track_ID[num_preset_track]; unsigned int(8) preset_type; unsignedint(8) preset_global_volume; if(preset_type == 0) { } if(preset_type== 1) { } if(preset_type == 2) { } if(preset_type == 3) { }if(preset_type == 4) { } if(preset_type == 5) { } if(preset_type == 6) {} if(preset_type == 7) { } if(preset_type == 8) { } if(preset_type == 9){ } if(preset_type == 10) { } if(preset_type == 11) { } stringpreset_name; }

Semantics according to the syntax of the above Table 3 may follow as:

‘version’ denotes a version of ‘prst’.

‘flags’ denotes flag information regarding whether to displayinformation stored in ‘prst’ for a user and whether to allow the user toedit the information stored in ‘prst’, when the object-based audiocontent is played.

‘flags’ may be flag information having a data type of an 8-bit integerand have the meaning as given by the following Table 4:

TABLE 4 Flags Display Edit 0x01 disable disable 0x02 enable disable 0x03enable enable

Specifically, in the case ‘flags’ is 0x01, when the object-based audiocontent is played, preset information stored in ‘prst’ may not bedisplayed for the user and the user may not edit the preset informationstored in ‘prst’.

In the case ‘flags’ is 0x02, when the object-based audio content isplayed, the preset information stored in ‘prst’ may be displayed for theuser whereas the user may not edit the preset information stored in‘prst’.

In the case ‘flags’ is 0x03, when the object-based audio content isplayed the preset information stored in ‘prst’ may be displayed for theuser and the user may not edit the preset information stored in ‘prst’.

‘preset_ID’ denotes the preset ID and may have a value greater than orequal to ‘1’.

‘num_preset_track’ denotes a number of input tracks associated with thepreset.

‘preset_track_ID[num_preset_track]’ denotes an array to store an inputtrack ID.

‘preset_name’ denotes a preset name.

‘preset_global_volume’ denotes preset global volume information.

Generally, in order to emphasize a rhythmic sense of the object-basedaudio content, the creator may increase a volume of apercussion-instrumental sound such as a drum to be relatively greaterthan other instrumental sounds and thereby generate the preset.

In this instance, when a relative volume difference between thepercussion-instrumental sound and the other instrumental sounds issmall, a user may not have a sufficient rhythmic sense. Conversely, whenthe relative volume difference between the percussion-instrumental soundand the other instrumental sounds is great, the global volume maydecrease. The percussion-instrument sound generally has an attributesuch as an effect sound. Accordingly, in comparison to the otherinstrumental sounds, a high frequency component of thepercussion-instrumental sound occupies a greater portion over the entireplay section.

For example, when a volume value of the preset including [vocal, piano,drum] is [250, 200, 400], the global volume may be appropriate but therhythmic sense may not be emphasized. Also, when the volume value of thepreset is [100, 150, 400], the rhythmic sense may be emphasized but theglobal volume may decrease.

The above phenomenon may be solved by further storing preset globalvolume information in the object-based audio content. The preset globalvolume information may be used to adjust the global volume of audioobjects that constitute the preset.

Specifically, when a volume value of the entire input tracks is storedbased on a basic global volume value set in the object-based audiocontent, and the preset is generated so that a preset global volumevalue may be greater than an existing global volume value, and in thisinstance, the object-based audio content is played, the relativelyvolume difference may further increase at a ratio of ‘basic globalvolume value/preset global volume value’.

For example, when the basic global volume value is ‘50’ and the volumevalue of the preset including [vocal, piano, drum] is [100, 150, 400]and the preset global volume value is set to 100, the volume of eachinstrument may increase by twice. Accordingly, the volume of the vocaland the piano constituting the main melody may increase by about twiceand the global volume of the object-based audio content may become anappropriate level. Also, since the volume of the drum increases bytwice, it is possible to emphasize the rhythmic sense.

As described above, when the volume is amplified using the preset globalvolume value, a sound quality may be deteriorated due to clipping andthe like. However, when the percussion-instrumental sound is increasedto be greater than or equal to a predetermined level, a user may notrecognize the deterioration of the sound quality occurring in thepercussion instrument. Based on this, the deterioration of the soundquality according to a use of the preset global volume information maynot become an issue.

Also, when the basic global volume value is maximum, the preset globalvolume information may be used to increase the global volume.

Specifically, in general playing of the object-based audio content, whenthe basic global volume value is maximum, it may be impossible to adjustthe volume of each of the audio objects. However, when the preset globalvolume information is stored in the object-based audio content, it ispossible to play the object-based audio content at a volume greater thanthe maximum value of the basic global volume value.

‘preset-type’ denotes a preset type.

According to an embodiment of the present invention, the preset type maybe determined based on a type of mixing information, an applicationtarget of the mixing information, whether the mixing information isupdated over a play time of the object-based audio content. Hereinafter,a method of determining the preset type will be described in detail.

Initially, the preset type may be determined based on the type of themixing information.

For example, the mixing information may include at least one of volumeinformation and equalization information. Hereinafter, a presetgenerated based on only the volume information is referred to as avolume preset. A preset generated based on only the equalizationinformation is referred to as an equalization preset. A preset generatedbased on both the volume information and the equalization information isreferred to as a volume/equalization preset.

Also, the preset type may be determined based on the application targetof the mixing information.

Specifically, the preset type may be determined depending on whether toapply the mixing information by considering an input track as an audioobject, or whether to apply the mixing information by considering aninput channel as the audio object. Hereinafter, a preset generated byconsidering the input track as the audio object is referred to as atrack preset. A preset generated by considering the input channel as theaudio object is referred to as a channel preset.

Also, the preset type may be determined based on whether the mixinginformation is updated over the play time of the object-based audiocontent.

Specifically, the preset type may be determined depending on whether themixing information has a constant value or is updated as theobject-based audio content is played. Hereinafter, when the mixinginformation is not updated, a preset is referred to as a static preset.When the mixing information is updated, the preset is referred to as adynamic preset.

According to an embodiment of the present invention, when the dynamicpreset is stored in the object-based audio content, a table mapping aninput track ID and mixing information of the input track ID may beincluded in ‘prst’. In this case, mixing information according to asampling number of the input track may be induced based on the mixinginformation that is defined in the ISO-BMFF and is stored in a ‘decodingtime to sample box (stts)’ and the above table. Here, relationshipinformation between the decoding time and the sampling number is storedin ‘stts’. Accordingly, when the object-based audio content is played, arandom access may be enabled and an amount of mixing information to bestored in the object-based audio content may decrease.

When the preset is generated using the aforementioned information, thepreset type may be classified as given by the following Table 5.Referring to the following Table 5, 12 presets may exist, which may befurther extended according to a classification element.

TABLE 5 static(S)/ track(T)/ volume equalization preset_type dynamic(D)channel(C) (Vol) (Eq) meaning 

0 S T Vol — static track volume preset 1 S T Vol Eq static track volumepreset with equalization 2 S T — Eq static track equalization preset 3 DT Vol — dynamic track volume preset 4 D T Vol Eq dynamic track volumepreset with equalization 5 D T — Eq dynamic track equalization preset 6S C Vol — static object volume preset 7 S C Vol Eq static object volumepreset with equalization 8 S C — Eq static object equalization preset 9D C Vol — dynamic object volume preset 10 D C Vol Eq dynamic objectvolume preset with equalization 11 D C — Eq dynamic object equalizationpreset

Referring to the above Table 5, the mixing information may includevolume information and equalization information. The volume informationand the equalization information may be stored in ‘prst’ in a differentform. Here, a storage type of the mixing information may be classifieddepending on whether the preset type is a static preset or a dynamicpreset.

1. When a preset type is a static preset:

When the preset type is the static preset, mixing information may be thesame in a plurality of frames constituting the object-based audiocontent. Accordingly, the same mixing information may be stored for eachaudio object. Here, A storage type of the mixing information may beclassified whether the preset type is a track preset or a channelpreset.

1.1. When a preset type is a static/track preset, that is, when a valueof ‘preset_type’ is 0, 1, 2:

When mixing information is stored for each track, an output channel typemay be determined based on an input track having a largest number ofchannels among input tracks. For example, when a first input trackincludes two channels and a second input track includes a singlechannel, the number of channels included in the first input channel isgreater than the number of channels included in the second input track.Accordingly, the output channel type may be determined as stereo.

In this case, syntax of a preset included in ‘prst’ may be given by thefollowing Table 6 through Table 8:

TABLE 6 if(preset_type = 0){ // static track volume preset for(i=0;i<num_preset_track; i++){ unsigned int(8) preset_volume; } }

TABLE 7 if(preset_type == 1){ // static track volume preset withequalization for(i=0; i<num_preset_track; i++){ unsigned int(8)preset_volume; unsigned int(8) num_freq_band; for(j=0; j<num freq_band;j++){ unsigned int(16) center_freq; unsigned int(16) bandwidth; unsignedint(8) preset_freq_gain; } } }

TABLE 8 if(preset_type == 2){ // static track equalization presetfor(i=0; i<num_preset_track; i++){ unsigned int(8) num_freq_band;for(j=0; j<num_freq_band; j++){ unsigned int(16) center_freq; unsignedint(16) bandwidth; unsigned int(8) preset_freq_gain; } } }

Semantics according to the syntax of the above Table 6 through Table 8may follow as:

‘preset_volume’ denotes volume information.

The volume information may include a volume gain value between an inputvolume value of an input track and an output volume value of an outputtrack. The volume gain value may be expressed by a percentage or decibel(dB).

Also, the volume gain value expressed by the percentage or dB may bequantized and thereby be stored. In this case, the quantized volume gainvalue may be expressed by the following Table 9 and Table 10:

TABLE 9 index 0 1 2 3 . . . 149 200 value(ratio) 0 0.02 0.04 0.06 . . .3.98 4.00

TABLE 10 index 0 1 2 3 4 5 6 7 8 9 10 11 12 13 value(dB) −25 −21 −18 −15−12 −8 −5 −3 −1 0 1 2 3 4

‘num_freq_band’ denotes a number of frequency bands to be applied with asound equalization and may have an integer value between zero and 32.

‘center_freq’ denotes a center frequency of each of the frequency bandsand may have an integer value between zero Hz and 20,000 Hz.

‘bandwidth’ denotes a bandwidth of each of the frequency bands and mayan integer value between zero Hz and 20,000 Hz.

‘preset_freq_gain’ denotes a frequency gain value in each of thefrequency bands.

Like the volume gain value, the frequency gain value may also beexpressed by a percentage or dB. Also, the frequency gain valueexpressed by the percentage or dB may be quantized and thereby bestored. In this case, the quantized frequency gain value may beexpressed by the following Table 11:

TABLE 11 index 0 1 2 3 . . . 149 200 gain 0 0.02 0.04 0.06 . . . 3.984.00

1.2. When a preset type is a static/channel preset, that is, when avalue of ‘preset_type’ is 7, 8, 9:

When mixing information is stored for each channel, the mixinginformation may be stored by considering a number of input tracks, anumber of channels for each input track, and an output channel type. Inthis case, syntax of a preset included in ‘prst’ may be expressed by thefollowing Table 12 through Table 14:

TABLE 12 if(preset_type == 6){ // static object volume preset unsignedint(8) num_input_channel[num_preset_track]; unsigned int(8)output_channel_type; for (i=0; i<num_preset_track; i++){ for (j=0;j<num_input_channel[i]; j++){ for (k=0; k<num_output_channel; k++){unsigened int(8) preset_volume; } } } }

TABLE 13 if(preset_type == 7){ // static object volume preset withequalization for (i=0; i<num_preset_track; i++){ for (j=0;j<num_input_channel[i]; j++){ for (k=0; k<num_output_channel; k++){unsigned int(8) preset_volume; unsigned int(8) num_freq_band; for(m=0;m<num_freq_band; m++){ unsigned int(16) center_freq; unsigned int(16)bandwidth; unsigned int(8) preset_freq_gain; } } } } }

TABLE 14 if(preset_type == 8){ // static object equalization preset for(i=0; i<num_preset_track; i++){ for (j=0; j<num_input_channel[i]; j++){for (k=0; k<num_output_channel; k++){ unsigned int(8) num_freq_band;for(m=0; m<num_freq_band; m++){ unsigned int(16) center_freq; unsignedint(16) bandwidth; unsigned int(8) preset_freq_gain; } } } } }

Semantics according to the syntax of the above Table 12 through Table 14may follow as:

‘num_input_channel[num_preset_track]’ denotes an array to storeinformation about the number of channels for each input track.

For example, ‘num_input_channel[num_preset_track]’ may be constructedusing ‘channel_count’ information existing in‘moov’/‘track’/‘media’/‘minf’/‘stbl’/‘stsd’. When the input trackincludes a mono channel, ‘num_input_channel[num_preset_track]’ may havea value of ‘1’. When the input track includes a stereo channel,‘num_input_channel[num_preset_track]’ may have a value of ‘2’. When theinput track includes 5-channel, ‘num_input_channel[num_preset_track]’may have a value of ‘5’.

‘output_channel_type’ denotes the output channel type, and‘num_output_channel’ denotes a number of output channels. For example,‘output_channel_type’ and ‘num_output_channel’ may have the relationshipas given by the following Table 15:

TABLE 15 output_channel_type Meaning num_output_channel 0 mono channel 11 stereo channel 2 2 5 channel 5

According to an embodiment of the present invention, when the presettype is a static/object/volume preset and the number of output channelsis five, mixing information stored in ‘prst’ may be expressed by thefollowing Table 16:

TABLE 16 preset_track_ID = 1 preset_track_ID = 7 L R M output channel L50 0 50 volume R 0 80 50 C 50 80 0 Ls 0 0 30 Rs 0 0 30

In this case, each of parameters stored in ‘prst’ may have the followingrelationship:

num_preset_track=2

preset_track_ID[2]=[1, 7]

num_input_channel[2]=[2, 1]

num_output_channel=5

preset_volume=[50, 0, 50, 0, 0, 0, 80, 80, 0, 0, 50, 50, 0, 30, 30]

Here, referring to ‘preset_volume’, it can be known that some storedmixing information are duplicated. In this case, since an amount ofinformation to be stored may unnecessarily increase, there is a need fora scheme that may decrease the amount of information to be stored in‘prst’. Description related thereto will be made in detail withreference to the following “2-b), c), and d)’.

2. When a preset type is a dynamic preset:

When the preset type is the dynamic preset, mixing information may beupdated in a plurality of frames constituting the object-based audiocontent and thus different mixing information may be stored.

Accordingly, the mixing information may be expressed in a matrixaccording to a frame number or a sampling number. Also, the matrix maybe expressed in a form of a table mapping a frame of an input track andmixing information corresponding thereto.

Hereinafter, a scheme of storing mixing information when the updatedmixing information is expressed by a mapping table will be describeddetail, and the mixing table may be given by the following Table 17:

TABLE 17 Input Track sampling number preset_track ID = 1 preset_track ID= 3 1 50 20 2 50 20 . . . . . . . . . 9 50 20 10 50 20 11 50 10 12 50 10. . . . . . . . . 19 50 10 20 50 10 21 70 60 22 70 60 . . . . . . . . .29 70 60 30 70 60

a) Store a mixing information value according to a frame number as is:

b) Store a mixing information value according to a frame number as areference value and a mixing information difference value with respectto the reference value:

The reference value denotes a reference mixing information value in areference frame. Accordingly, the reference mixing information value inthe reference frame, and a difference value between the reference mixinginformation value and mixing information in the remaining framesexcluding the reference frame may be stored in ‘prst’.

When the reference value is zero, the above Table 17 may be brieflyexpressed by the following Table 18:

TABLE 18 Input Track sampling count preset_track ID = 1 20 50 10 70Input Track sampling count preset_track ID = 3 10 20 10 10 10 60

Accordingly, when the mixing information is stored in ‘prst’ in a formof the above Table 18, an amount of information to be stored maydecrease.

c) Store mixing information flag information indicating a duplication:

When a mixing information value of a previous frame is the same as amixing information value of a current frame, the present scheme maystore flag information indicating that the mixing information value ofthe previous frame is the same as the mixing information value of thecurrent frame, without storing the mixing information value, and therebymay decrease an amount of information to be stored in ‘prst’.

In this case, although the mixing information value is updated overtime, there may be no great probability that mixing information may beupdated for each frame. Accordingly, it may be ineffective to assign aflag value to each frame.

According to an embodiment of the present invention, there is provided amethod of generating an object-based audio content that may store amixing information value and flag information based on information abouta frame interval where mixing information is updated.

For example, when the mixing information is updated as shown in theabove Table 17, mixing information, that is, volume information may beupdated based on a unit of 10 frames. Accordingly, the above Table 17may be briefly expressed by the following Table 19:

TABLE 19 preset_volume 50 50 70 20 10 60 volume_flag 0 1 0 0 0 0modified preset_volume 50 — 70 20 10 60

Accordingly, parameters stored in ‘prst’ may have the followingrelationship:

dynamic_interval=10

volume_flag=[0, 1, 0, 0, 0, 0]

preset_volume=[50, 70, 20, 10, 60]

Here, ‘dynamic_interval’ denotes the frame interval, and ‘volume_flag’denotes volume flag information. When mixing information of the previousframe is the same mixing information of the current frame, ‘volume_flag’may have a value of ‘1’. Conversely, when mixing information of theprevious frame is different from mixing information of the currentframe, ‘volume_flag’ may have a value of ‘0’.

Referring to this, a plurality of frames included in the object-basedaudio content may be classified into a frame group according to aparticular frame interval. The mixing information may be stored for eachframe group.

Specifically, according to an embodiment of the present invention, whenfirst group mixing information about a first frame group is differentfrom second group mixing information about a second frame group, apreset parameter to be stored in ‘prst’ may include the first groupmixing information, the second group mixing information, first flaginformation indicating that the first group mixing information isdifferent from the second group mixing information, and a number offrames that are included in each of frame groups, that is, a frameinterval.

Conversely, when the first group mixing information is the same as thesecond group mixing information, the preset parameter to be stored in‘prst’ may include the first group mixing information, second flaginformation indicating that the first group mixing information is thesame as the second group mixing information, and the number of framesthat are included in each of the frame groups.

d) Store mixing information using a number of times that mixinginformation is updated and a frame number of a frame where the mixinginformation is updated:

According to the present scheme, the number of times that the mixinginformation is updated, the frame number of the frame where the mixinginformation is updated, and mixing information corresponding thereto maybe stored. Accordingly, the present scheme may be more effective thanthe scheme described above in ‘c)’.

For example, when the mixing information is updated as shown in theabove Table 17, the number of times that the mixing information isupdated, the frame number of the frame where the mixing information isupdated, and the mixing information, that is, the volume information, tobe stored in ‘prst’ may follow as:

num_updates=3

updated_sample_number=[1, 11, 21]

preset_volume=[50, 20, 50, 10, 70, 60]

Here, ‘num_updates’ denotes the number of times that the mixinginformation is updated, and ‘updated_sample_number’ denotes the framenumber of the frame where the mixing information is updated.

Schemes of effectively storing mixing parameters the mixing informationis updated over a play time have been described above in detail. Theabove schemes may be applicable even when a preset type is a staticpreset and stored mixing information is duplicated.

For example, when the mixing information stored in ‘prst’ is expressedby the above Table 16 and the mixing information is stored according tothe scheme of ‘c)’ using flag information, the above Table 16 may bemodified as given by the following Table 20:

TABLE 20 preset_volume 50 0 50 0 0 0 80 80 0 0 50 50 0 30 30 volume_flag0 0 0 0 1 1 0 1 0 1 0 1 0 0 1 modified_preset_volume 50 0 50 0 — — 80 —0 — 50 — 0 30 —

Accordingly, parameters stored in ‘prst’ may have the followingrelationship:

volume_flag=[0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1]

preset_volume=[50, 0, 50, 0, 80, 0, 50, 0, 30]

In this case, the syntax of the preset in ‘prst’ of the above Table 12may be modified as given by the following Table 21:

TABLE 21 if(preset_type == 6){ // static object volume preset unsignedint(8) num_input_channel[num_preset_track]; unsigned int(8)output_channel_type; unsigned int(16) num_volume_flag; for (i=0;i<num_volume_flag; i++){ unsigned int(8) volume_flag;if(volume_flag==0){ unsigned int(8) preset_volume; } } }

Semantics according to the syntax of the above Table 21 may follow as:

‘volume_flag’ denotes volume flag information and may have a data typeof a one-bit integer. When mixing information of the previousinformation is the same as mixing information of the current frame,‘volume_flag’ may have a value of ‘1’. Conversely, when the mixinginformation of the previous frame is different from the mixinginformation of the current frame, ‘volume_flag’ may have a value of ‘0’.

‘num_volume_flag’ denotes an array length of ‘volume_flag’.

Hereinafter, an embodiment of storing mixing information of a dynamicpreset in ‘prst’ based on the aforementioned preset storage scheme willbe described in detail.

2.1. When a preset type is a dynamic/track preset, that is, when a valueof ‘preset_type’ is 3, 4, 5:

As described above, when the preset type is a track type, an outputchannel type may not be considered to store mixing information.

According to an embodiment of the present invention, syntax of a presetincluded in ‘prst’ may be expressed by the following Table 22 throughTable 24. The syntax shown in the following Table 22 through Table 24may be associated with a scheme of storing mixing information using theaforementioned scheme of ‘d)’.

TABLE 22 if(preset_type == 3)){ // dynamic track volume preset unsignedint(16) num_updates; for(i=0; i<num_updates; i++){ unsigned int(16)updated_sample_number; for(j=0; j<num_preset_track; j++){ unsignedint(8) preset_volume; } } }

TABLE 23 if(preset_type == 4){ // dynamic track volume preset withequalization unsigned int(16) num updates; for(i=0; i<num_updates; i++){unsigned int(16) updated_sample_number; for(j=0; j<num_preset_track;j++){ unsigned int(8) preset_volume; unsigned int(16) num_freq_band; for(k=0; k<num_freq_band; k++){ unsigned int(16) center_freq; unsignedint(16) bandwidth; unsigned int(8) preset_freq_gain; } } } }

TABLE 24 if(preset_type == 5){ // dynamic track equalization presetunsigned int(16) num_updates; for(i=0; i<num_updates; i++){ unsignedint(16) updated_sample_number; for(j=0; j<num_preset_track; j++){unsigned int(16) num_freq_band; for(k=0; k<num_freq_band; k++){ unsignedint(16) center_freq; unsigned int(16) bandwidth; unsigned int(8)preset_freq_gain; } } } }

Semantics according to the syntax of the above Table 22 through Table 24may follow as:

‘num_updates’ denotes the number of times that the mixing information isupdated.

‘updated_sample_number’ denotes the frame number of the frame where themixing information is updated.

Also, when the mixing information is stored according to the scheme of‘c)’, the syntax of the above Table 22 may be modified as given by thefollowing Table 25:

TABLE 25 if(preset_type == 3)){ // dynamic track volume preset unsignedint(8) dynamic_interval; unsigned int(32) num_volume_flag; for(i=0; i<num_volume_flag; i++){ unsigned int(8) volume_flag; if(volume_flag =0){unsigned int(8) preset_volume; } } }

Semantics according to the syntax of the above Table 25 may follow as:

‘dynamic_interval’ denotes the frame interval.

2.2. When a preset type is a dynamic/channel preset, that is, when avalue of ‘preset_type’ is 9, 10, 11:

As described above, when mixing information is stored for each channel,the mixing information may be stored by considering a number of inputtracks, a number of channels for each input track, and an output channeltype.

In this case, syntax of a preset in ‘prst’ may be given by the followingTable 26 through Table 28. The syntax of the following Table 26 throughTable 28 may be associated with a scheme of storing the mixinginformation using the scheme of ‘d)’.

TABLE 26 if(preset_type == 9){ // dynamic object volume preset unsignedint(16) num_updates; for(i=0; i<num_updates; i++){ unsigned int(16)updated_sample_number; for(j=0; j<num_preset_track; j++){ for (k=0;k<num_input_channel[j]; k++){ for (m=0; m<num_output_channel; m++){unsigned int(8) preset_volume; } } } } }

TABLE 27 if(preset_type == 10){ // dynamic object volume preset withequalization unsigned int(16) num_updates; for(i=0; i<num_updates; i++){for(j=0; j<num_preset_track; j++){ for (k=0; k<num_input_channel[i];k++){ for (m=0; m<num_output_channel; m++){ unsigned int(8)preset_volume; unsigned int(8) num_freq_band; for(m=0; m<num_freq_band;m++){ for(n=0; n<num_freq_band; n++){ unsigned int(16) center_freq;unsigned int(16) bandwidth; unsigned int(8) preset_freq_gain; } } } } }} }

TABLE 28 if(preset_type == 11){ // dynamic object equalization presetunsigned int(16) num_updates; for(i=0; i<num_updates; i++){ for(j=0;j<num_preset_track; j++){ for (k=0; k<num_input_channel[i]; k++){ for(m=0; m<num_output_channel; m++){ unsigned int(8) num_freq_band;for(m=0; m<num_freq_band; m++){ for(n=0; n<num_freq_band; n++){ unsignedint(16) center_freq; unsigned int(16) bandwidth; unsigned int(8)preset_freq_gain; } } } } } } }

It has been described that the mixing information includes only thevolume information and the equalization information. However, accordingto an embodiment of the present invention, the mixing information mayfurther include a magnitude value of a sound image and an angle value ofthe sound image. The sound image may be formed by at least one inputchannel. The magnitude value of the sound image and the angle value ofthe sound image may be a preset parameter to determine a virtualposition of the sound image.

In this case, the angle value of the sound image may be quantized andthereby be stored. For example, the angle value of the sound image maybe expressed in a form as given by the following Table 29:

TABLE 29 index 0 1 2 3 4 5 6 value(°) 0 5 10 15 20 25 30 index 7 8 9 1011 12 13 value(°) 40 50 60 70 80 90 100 index 14 15 16 17 18 19 20value(°) 110 120 130 140 150 160 170 index 21 22 23 24 25 26 27 value(°)180 190 200 210 220 230 240 index 28 29 30 31 32 33 34 value(°) 250 260270 280 290 300 310 index 35 36 37 38 39 40 41 value(°) 320 330 335 340345 350 355

According to an embodiment of the present invention, the object-basedaudio content may further include a mono/stereo audio signal that is adown-mixed signal of an audio signal mixed based on any one of at leastone preset.

The mono/stereo audio signal may be stored for an interaction with anaudio play device incapable of playing the object-based audio content.

When the object-based audio content further includes the mono/stereoaudio signal, an audio play device capable of playing the object-basedaudio content may play the object-based audio content based on aplurality of audio objects and at least one preset. The audio playdevice incapable of playing the object-based audio content may play themono/stereo audio signal. Accordingly, the object-based audio contentmay be played regardless of a type of the audio play device.

For example, the mono/stereo audio signal may be stored in ‘mdat’. Inthis case, semantics of flags included in ‘moov’/‘trak’/‘tkhd’ may bemodified s given by the following Table 30. In the following Table 30,an underlined portion corresponds to semantics to be deleted and abolded portion corresponds to semantics to be added.

TABLE 30 flags - is a 24-bit integer with flags; the following valuesare defined: Track_enabled: Indicates that the track is enabled. Flagvalue is 0x000001. A disabled track (the low bit is zero) is treated asif it were not present. Track_in_movie: Indicates that the track is usedin the presentation. Flag value is 0x000002. Track_in_interaction_movie:Indicates that the track is used in the presentation by an interactivemusic player. Flag value is 0x000002. Track_in_non_interaction_movie:Indicates that the track is used in the presentation by anon-interactive music player. Flag value is 0x000003. Track_in_preview:Indicates that the track is used when previewing the presentation. Flagvalue is 0x000004.

Store a Preset Parameter in ‘trak’ Existing in ‘moov’ Using an MPEG-4Binary Format for Scene (BIFS)

According to an embodiment of the present invention, the presetparameter may be stored in ‘trak’ existing in ‘moov’ using the MPEG-4BIFS.

In this case, among preset parameters, a first preset parameter, forexample, a number of presets, a default preset ID, and the like,indicating the entire preset information may be stored in ‘prco’, andmay also be stored in a node that is newly defined in BIFS.

When the first preset parameter is stored using the newly defined node,a node interface may be expressed by the following Table 31.‘PresetSound’ denotes the newly defined node in the following Table 31:

TABLE 31 node interface PresetSound{ exposedField SFNode source NULLexposedField SFInt32 numPresets 1 exposedField SFInt32 default_preset ID1 }

Semantics according to the node interface of the above Table 31 mayfollow as:

A ‘source’ field follows semantics of sub-clause 7.2.2.116 of ISO/IEC(International Electrotechnical Commission) 14496-11:2005.

A ‘numPreset’ field and a ‘default_preset_ID’ field follow theaforementioned semantics of ‘prco’.

Also, among the preset parameters, a preset parameter indicating volumeinformation may be stored by appropriately combining an AudioMix nodeand a WideSound node.

Also, among the preset parameters, a preset parameter indicatingequalization information may be stored using PROTO audioEcho of anexisting AudioRXProto node, and may also be stored using the node thatis newly defined in the BIFS.

When equalization information, more accurately, a frequency gain valueis stored using the newly defined node, the node interface may beexpressed by the following Table 32. ‘PersetAudioEqualizer’ denotes thenewly defined node in the following Table 32:

TABLE 32 node interface PresetAudioEqualizer{ eventIn MFNode addChildreneventIn MFNode removeChildren exposedField  MFNode children [ ]exposedField  SFInt32  numInputs 1 exposedField  MFFloat  params [ ] }

Semantics according to the node interface of the above Table 32 mayfollow as:

A ‘children’ field denotes an output of nodes that may be simultaneouslymixed. For example, the ‘child’ field may be AudioSource, AudioMix, andthe like.

‘addChildren’ denotes a list of nodes to be added to the ‘children’field.

‘removeChildren’ denotes a list of nodes to be removed from the‘children’ field.

A ‘numInputs’ field denotes a number of input tracks.

A ‘params’ field denotes a matrix of [numInputs 3·numumFreqBands]. Anequalization parameter, that is, equalization information of a frequencyband to be applied to each input track may be stored in each column. Itmay be expressed by the following Table 33:

TABLE 33 Data Type Function Default value Range float numFreqBands 2 0,. . . , 32 float[ ] centerFreq [ ] 0, . . . , 20000 float[ ] bandwidth [] 0, . . . , 20000 float[ ] gain 1 0.1, . . . , 10

Here, ‘numFreqBands’ denotes a number of frequency bands, ‘centerFreq’denotes a center frequency of each of the frequency bands, ‘bandwidth’denotes a bandwidth in each of the frequency bands, and ‘gain’ denotes again value for each of the frequency bands.

Specifically, columns of the ‘params’ field may be constructed asfollows:

numFreqBands=params [0]

centerFreq [0 . . . numFreqBands−1]=params [1 . . . numFreqBands]

bandwidth [0 . . . numFreqBands-1]=params [numFreqBands+1 . . .2·numFreqBands]

gain [0 . . . numFreqBands−1]=params [2·numFreqBands+1 . . .3·numFreqBands]

Store a Preset Parameter in ‘xml’ Existing in ‘meta’ Using an MPEG-4Lightweight Application Scene Representation (LASeR):

According to an embodiment of the present invention, the presetparameter may be stored in ‘xml’ existing in ‘meta’ using the MPEG-4LASeR.

In this case, the preset parameter may be stored by newly definingelements and attributes as given by the following Table 34:

TABLE 34 i. presetContainer element semantics The same information as‘prco’ is stored in a presetContainer element. attribute ‘numPreset’denotes a number of presets. ‘defaultPresetID’ denotes a default presetID. ii. preset element semantics The same information as ‘prst’ isstored in a preset element. Also, the preset element exists as childrenof the presetContainer element. attribute The aforementioned syntax andsemantics of ‘prst’ of the ISO-BMFF are used as attributes.

Others

According to an embodiment of the present invention, when presetinformation is pre-described in a file including a plurality of audioobjects, it is possible to store a preset parameter in an object-basedaudio content format by controlling the object-based audio contentformat to refer to the preset information, or by modifying the presetinformation to be suitable for the object-based audio content format.

Also, according to an embodiment of the present invention, when presetinformation is described in a file that is constructed in a sceneexpression language such as a BIFS or a LASeR, it is possible to store apreset parameter in an object-based audio content format by controllingthe object-based audio content format to refer to the presetinformation, or by modifying the preset information to be suitable for aschema of the object-based audio content format.

Also, according to an embodiment of the present invention, when presetinformation is obtained file including only a preset, it is possible torefer the file. Also, the preset information in the file can be storedin an object-based audio content format As described above, descriptioninformation or descriptive metadata may be additionally stored in theobject-based audio content. The stored description information ordescriptive metadata may be used to perform searching and filtering forthe object-based audio content. Hereinafter, a method of storing thedescription information will be described with reference to FIGS. 7 and8.

FIGS. 7 and 8 illustrate a structure of a file format for storing anobject-based audio content including description information accordingto an embodiment of the present invention.

In an ISO object-based audio content format, the description informationmay include metadata for expressing an album (hereinafter, ‘album levelmetadata’), metadata for expressing a song (hereinafter, ‘song levelmetadata’), and metadata for expressing a track (hereinafter, ‘tracklevel metadata’). Here, each of the metadata may be given by thefollowing Table 35:

TABLE 35 Level Description album song track title ∘ ∘ ∘ singer ∘ ∘ —composer — ∘ — lyricist — ∘ — performing musician — — ∘ genre ∘ ∘ — filedate ∘ ∘ ∘ CD track number of the song — ∘ — production ∘ ∘ — publisher∘ ∘ — copyright information ∘ ∘ — ISRC (International Standard — ∘ —Recording Code) image ∘ ∘ — URL site address related to ∘ ∘ — the musicand the artist(e.g. album homepage, fan cafe, music video)

The metadata may be classified into two types, that is, “metadata forexpressing a song and a track” and “metadata for expressing an album”.Here, “metadata for expressing the album (i.e album level metadata)” mayexpress common information about songs, included in the same album,among songs stored in the object-based audio content.

‘album level metadata’ may be stored in ‘ftyp’/‘meta’, ‘song levelmetadata’ may be stored in ‘moov’/‘meta’, and ‘track level metadata’ maybe stored in ‘moov’/‘trak’/‘meta’. It may be arranged as given by thefollowing Table 36:

TABLE 36 Metadata Location track level trak/meta box song levelmoov/meta box album level meta box of file

The structure of the ISO object-based audio content file format wherethe metadata are stored may be provided as shown in FIGS. 7 and 8. Theformat structure of FIG. 7 indicates a single type file structure, andthe format structure of FIG. 8 indicates a multiple type file structure.

Here, the metadata may be handled according to an mpeg-7 type (mp7t).

More specifically, ‘CreationInformation’, ‘MediaInformation’, and‘Semantics DS’ of MPEG-7 may be used for ‘track level metadata’ and‘song level metadata’. ‘Content-Collection DS’ and ‘CreationInformationDS’ of MPEG-7 may be used for ‘album level metadata’. This is because‘album level metadata’ includes structure information about a pluralityof songs included in a single album.

It may be arranged as given by the following Table 37 through Table 39:

TABLE 37 Tag Name SemanticsCreationInformation/Creation/Creator[@type=“Instrument”] The title ofthe trackCreationInformation/Creation/Creator[Role/@herf=“urn:mpeg:mpeg7: Thename of a musician RoleCS:2001:PERFORMER”]/Agent[@xsi : type =“PersonType”] / Name / who is performing {FamilyName, GivenName}(Aristname) instruments, such as vocal,CreationInformation/Creation/Creator[Role/@herf= “urn:mpeg: mpeg7:guitar, keyboard and so on RoleCS:2001:PERFORMER”]/Agent[@xsi : type =“PersonGroupType”]/ Name/(Group Name)CreationInformation/CreationCoordinates/Date/TimePoint Time point of therecording

TABLE 38 Tag Name SemanticsCreationInformation/Creation/Title[@type=“songTitle”] The title of thesong CreationInformation/Creation/Creator[Role/@herf=“urn: mpeg : Thename of a musician such as mpeg7: RoleCS:2001:PERFORMER”]/Agent[@xsi :type = singer, composer and lyricist “PersonType”] / Name /{FamilyName,GivenName}(Arist name) CreationInformation/Creation/Creator[Role/@herf=“urn : mpeg : mpeg7: RoleCS:2001:PERFORMER”]/Agent[@xsi : type =“PersonGroupType”] /Name/(Group Name)CreationInformation/Classification/Genre[@herf=“urn:id3:v1:genreID”]Genre CreationInformation/CreationCoordinates/Date/TimePoint Time pointwhen the song is releasedSemantics/SemanticBase[@xsi:type=“SemanticStateType”]/ CD track numberof the song AttributeValuePairCreationInformation/Creation/Abstract/FreeTextAnnotation Information onproduction, Publisher and site address related to the music and theartist (e.g. album homepage, fan cafe and music video)CreationInformation/Creation/copyrightString Textual label indicatinginformation that may be displayed or otherwise made known to the enduser MediaInformation/MediaIdentification/EntityIdentifier ISRCCreationInformation/Creation/TitleMedia[@type=“TitleImage”]

TABLE 39 Tag Name SemanticsContentCollection/CreationInformation/Creation/Title[@type=“albumTitle”]The title of the albumContentCollection/CreationInformation/Creation/Creator[Role/@href=“urn:The name of mpeg:mpeg7:RoleCS:2001:PERFORMER”]/Agent[@xsi:type =representative “PersonType”]/ Name /{FamilyName, GivenName}(Arist name)musician of the album CreationInformation/Creation/Creator[Role/@herf=“urn:mpeg: mpeg7: RoleCS:2001:PERFORMER”]/Agent[@xsi : type =“PersonGroupType”]/ Name/(Group Name)ContentCollection/CreationInformation/Classification/Genre[@href=“urn:Genre id3:v1:genreID”]ContentCollection/CreationInformation/CreationCoordinates/Date/TimepointTime point when the album is relatedContentCollection/CreationInformation/Creation/Abstract/FreeTextAnotation Information on production, publisher and site address relatedto the music and the artist (e.g. album homepage, fan cafe and musicvideo) ContentCollection/CreationInformation/Creation/CopyrightStringTextual label indicating information that may be displayed or otherwisemade known to the end userContentCollection/CreationInformation/Creation/TitleMedia[@type=“TitleImage”] The title of the multimedia content in image form

Also, audio content information such as lyrics of a song and the likemay be included in the object-based audio content. When the object-basedaudio content is played and in this instance, the audio contentinformation is displayed on an audio content play device, it is possibleto more effectively provide an object-based audio service. The audiocontent information may be updated over a play time of the object-basedaudio content. Hereinafter, the audio content information that isupdated over the play time is referred to as ‘Timed Text’.

In the object-based audio content file format, it is possible to provide‘Timed Text’ using a timed text standard such as 3^(rd) GenerationPartnership Project Transport Stream 26.245 (hereinafter, ‘3GPP TimedText’) and an MPEG-4 Streaming Text Format.

For example, when ‘Timed Text’ is provided using ‘3GPP Timed Text’,‘3GPP Timed Text’ may include a text sample and a sample description.

Here, the text sample may include a text string and a sample modifier.The sample modifier may contain information about rendering the textstring.

The text sample may be stored in a singe track, that is, a text track of‘mdat’ in an ISO-BMFF. The stored text sample may be synchronized withtimed media such as an audio track, using information stored in ‘stts’,‘stsc’, ‘stco’, and the like, existing in‘moov’/‘trad’/‘mdia’/‘minf’/‘stbl’, and thereby be played.

Also, the sample description may include information about a scheme ofrending a text. For example, the sample description may includeinformation about a location of a text to be displayed, a color of thetext, a background color, and the like. The sample description mayextend ‘SampleEntry’ to ‘TextSampleEntry’ and thereby be described in‘stsd’.

The method of generating the object-based audio content according to anembodiment of the present invention has been described above.Hereinafter, a method of playing the object-based audio content that isgenerated according to the aforementioned object-based audio contentgenerating method will be described with reference to FIG. 5.

FIG. 5 is a flowchart illustrating a method of playing an object-basedaudio content according to an embodiment of the present invention.

In operation 510, the object-based audio content playing method mayrecover a plurality of audio objects and at least one preset.

In this case, the object-based audio content may be generated accordingto the object-based audio content generating method described above withreference to FIG. 3.

In operation 520, the object-based audio content playing method may mixthe plurality of audio objects, based on the at least one preset, togenerate an output audio signal.

In operation 530, the object-based audio content playing method may playthe output audio signal.

As described above, when a default preset ID included in a presetparameter has a value of ‘0’, the object-based audio content may beplayed according to a preset stored in a bitstream of audio objects thatare encoded and are stored using an SAOC technology. Hereinafter, aprocess of playing the object-based audio content based on the presetstored in the bitstream of the audio objects that are encoded and arestored using the SAOC technology will be described in detail withreference to FIG. 6.

FIG. 6 is a flowchart illustrating a method of playing an object-basedaudio content according to another embodiment of the present invention.

In operation 610, the object-based audio content playing method maydetermine whether a preset exists in the object-based audio content.

When it is determined the preset exists, that is, when it is determined‘num_preset’ has a value excluding ‘0’ in operation 610, theobject-based audio content playing method may determine whether adefault preset ID exists in the object-based audio content in operation620.

When it is determined the default preset ID exists, that is, when it isdetermined ‘default_preset_ID’ has a value excluding ‘0’ in operation620, the object-based audio content playing method may mix a pluralityof contents, based on a preset having the same preset ID as the defaultpreset ID, to generate an output audio signal in operation 630, and mayplay the output audio signal in operation 670.

Conversely, when it is determined the preset does not exist, that is,when it is determined ‘num_preset’ has a value of ‘0’ in operation 610,or when it is determined the default preset ID does not exist, that is,when it is determined ‘default_preset_ID’ has a value of ‘0’ inoperation 620, the object-based audio content playing method maydetermine whether a SAOC bitstream exists in operation 640.

When it is determined the SAOC bitstream exists in operation 640, theobject-based audio content playing method may determine whether thepreset exists in the SAOC bitstream in operation 650.

When it is determined the preset exists in the SAOC bitstream inoperation 650, the object-based audio content playing method may mix theplurality of audio objects, based on a first preset included in the SAOCbitstream, to generate an output audio signal in operation 660, and mayplay the output audio signal in operation 670.

Conversely, when it is determined the SAOC bitstream does not exist inoperation 640, or when it is determined the preset does not exist in theSAOC bitstream in operation 650, the object-based audio content playingmethod may determine the preset does not exist in the object-based audiocontent and thus may not play the object-based audio content.

The exemplary embodiments of the present invention includecomputer-readable media including program instructions to implementvarious operations embodied by a computer. The media may also include,alone or in combination with the program instructions, data files, datastructures, tables, and the like. The media and program instructions maybe those specially designed and constructed for the purposes of thepresent invention, or they may be of the kind well known and availableto those having skill in the computer software arts. Examples ofcomputer-readable media include magnetic media such as hard disks,floppy disks, and magnetic tape; optical media such as CD ROM disks;magneto-optical media such as floptical disks; and hardware devices thatare specially configured to store and perform program instructions, suchas read-only memory devices (ROM) and random access memory (RAM).Examples of program instructions include both machine code, such asproduced by a compiler, and files containing higher level code that maybe executed by the computer using an interpreter. The described hardwaredevices may be configured to act as one or more software modules inorder to perform the operations of the above-described embodiments ofthe present invention, or vice versa.

Although a few embodiments of the present invention have been shown anddescribed, the present invention is not limited to the describedembodiments. Instead, it would be appreciated by those skilled in theart that changes may be made to these embodiments without departing fromthe principles and spirit of the invention, the scope of which isdefined by the claims and their equivalents.

The invention claimed is:
 1. A method of generating an object-basedaudio content, the method comprising: receiving a plurality of audioobjects; generating at least one preset using the plurality of audioobjects; and storing a preset parameter with respect to an attribute ofthe at least one preset and the plurality of audio objects, wherein thepreset parameter is stored in a form of a box that is defined in a mediafile format about the object-based audio content.
 2. The method of claim1, wherein: the box includes a moov box, the moov box includes a firstbox defined in the moov box, and the first box includes a second boxdefined in the first box, the preset parameter includes a first presetparameter and a second preset parameter, and the first preset parameterincludes at least one of a number of the at least one preset and apreset identification (ID) of any one preset of the at least one preset,and the first preset parameter is stored in the first box, and thesecond preset parameter is stored in the second box.
 3. The method ofclaim 1, wherein: the box includes an ftyp box and a moov box, the ftypbox includes a first meta box and the moov box includes a second metabox, and the preset parameter is stored in any one of the first meta boxand the second meta box.
 4. The method of claim 3, wherein: descriptioninformation of the object-based audio content is stored in the firstmeta box, and the preset parameter is stored in the second meta box. 5.The method of claim 1, wherein: the box includes an ftyp box and a moovbox, and the preset parameter is stored in any one of a meco boxexisting in the moov box, or a meco box existing in the ftyp box.
 6. Themethod of claim 1, wherein: the storing of the preset parameter furtherstores description information of the object-based audio content, andthe description information is stored based on an MPEG-7 type (mp7t). 7.The method of claim 1, wherein: the storing of the preset parameterfurther stores timed text data about the object-based audio content, andthe timed text data is stored based on any one of a 3^(rd) GenerationPartnership Project Transport Stream 26.245 (3GPP TS 26.245) and anMPEG-4 Streaming Text Format.
 8. The method of claim 1, wherein: the boxincludes a moov box and the moov box includes a track box, and thestoring of the preset parameter stores the preset parameter in a trackbox existing in the moov box, using an MPEG-4 Binary Format for Scene(BIFS).
 9. The method of claim 1, wherein: the box includes a meta boxand the meta box includes an xml box, and the storing of the presetparameter stores the preset parameter in the xml box using an MPEG-4Lightweight Application Scene Representation (LASeR).
 10. The method ofclaim 1, wherein: the preset parameter includes mixing information aboutthe plurality of audio objects, and the mixing information includes atleast one of volume information about each of the audio objects andequalization information about each of the audio objects.
 11. The methodof claim 10, wherein: the preset parameter further includes presetglobal volume information about the plurality of audio objects.
 12. Themethod of claim 10, wherein: the object-based audio content includes aplurality of tracks including at least one channel, and the mixinginformation further includes a magnitude value of a sound image and anangle value of the sound image, and the sound image is formed by the atleast one channel.
 13. The method of claim 10, wherein: the equalizationinformation includes a number of frequency bands to be applied withequalization, a center frequency of each of the frequency bands, abandwidth of each of the frequency bands, and a frequency gain value ineach of the frequency bands.
 14. The method of claim 13, wherein: thevolume information includes a volume gain value between an input volumevalue of each of the audio objects and an output volume value of each ofthe audio objects, and the volume gain value and the frequency gainvalue are expressed using a percentage or decibel (dB).
 15. The methodof claim 10, wherein: the object-based audio content includes aplurality of frames that are sequentially played, and the mixinginformation is updated as the plurality of frames is played.
 16. Themethod of claim 15, wherein: the preset parameter includes referencemixing information in a reference frame among the plurality of frames,and a difference between the reference mixing information and mixinginformation in the remaining frames excluding the reference frame fromthe plurality of frames.
 17. The method of claim 15, wherein: theplurality of frames is classified into a plurality of frame groupsincluding a first frame group and a second frame group that are adjacentto each other, and when first group mixing information about the firstframe group is different from second group mixing information about thesecond frame group, the preset parameter includes the first group mixinginformation, the second group mixing information, first flag informationindicating that the first group mixing information is different from thesecond group mixing information, and a number of frames included in eachof the frame groups, and when the first group mixing information is thesame as the second group mixing information, the preset parameterincludes the first group mixing information, second flag informationindicating that the first group mixing information is the same as thesecond group mixing information, and the number of frames included ineach of the frame groups.
 18. The method of claim 15, wherein: thepreset parameter includes a number of times that the mixing informationis updated, a frame number of a frame where the mixing information isupdated, and mixing information in the frame where the mixinginformation is updated.
 19. The method of claim 10, wherein: theobject-based audio content includes a plurality of tracks including atleast one channel, the preset parameter further includes a number of thetracks, a number of the at least one channel for each of the tracks, anda number of at least one output channel to output the object-based audiocontent, and the mixing information includes mixing information for eachof the at least one output channel.
 20. The method of claim 1, wherein:the storing of the preset parameter further stores a mono/stereo audiosignal corresponding to a down-mixed signal of an audio signal that ismixed based on any one preset of the at least one preset.
 21. The methodof claim 1, wherein: the media file format is in a structure of anInternational Standardization Organization (ISO) base media file format.22. A method of playing an object-based audio content, the methodcomprising: recovering a plurality of audio objects and at least onepreset from the object-based audio content; mixing the plurality ofaudio objects, based on the at least one preset, to generate an outputaudio signal; and playing the output audio signal, wherein each of theat least one preset includes a preset parameter, and the presetparameter is stored in the object-based audio content in a form of a boxthat is defined in a media file format about the object-based audiocontent.
 23. The method of claim 22, wherein: the box includes a moovbox, the moov box includes a first box defined in the moov box, and thefirst box includes a second box defined in the first box, the presetparameter includes a first preset parameter and a second presetparameter, and the first preset parameter includes at least one of anumber of the at least one preset and a preset ID of any one preset ofthe at least one preset, and the first preset parameter is stored in thefirst box, and the second preset parameter is stored in the second box.24. The method of claim 22, wherein: the preset parameter includesmixing information about the plurality of audio objects, and the mixinginformation includes at least one of volume information about each ofthe audio objects and equalization information about each of the audioobjects.
 25. The method of claim 24, wherein: preset parameter furtherincludes preset global volume information about the plurality of audioobjects, and the playing adjusts the global volume of all the mixedaudio objects based on the preset global volume information about theplurality of audio objects.
 26. The method of claim 24, wherein: theequalization information includes a number of frequency bands to beapplied with equalization, a center frequency of each of the frequencybands, a bandwidth of each of the frequency bands, and a frequency gainvalue in each of the frequency bands.
 27. The method of claim 24,wherein: the object-based audio content includes a plurality of framesthat are sequentially played, and the mixing information is updated asthe plurality of frames is played.
 28. The method of claim 27, wherein:the preset parameter includes reference mixing information in areference frame among the plurality of frames, and a difference betweenthe reference mixing information and mixing information in the remainingframes excluding the reference frame from the plurality of frames. 29.The method of claim 27, wherein: the plurality of frames is classifiedinto a plurality of frame groups including a first frame group and asecond frame group that are adjacent to each other, and when first groupmixing information about the first frame group is different from secondgroup mixing information about the second frame group, the presetparameter includes the first group mixing information, the second groupmixing information, first flag information indicating that the firstgroup mixing information is different from the second group mixinginformation, and a number of frames included in each of the framegroups, and when the first group mixing information is the same as thesecond group mixing information, the preset parameter includes the firstgroup mixing information, second flag information indicating that thefirst group mixing information is the same as the second group mixinginformation, and the number of frames included in each of the framegroups.
 30. The method of claim 27, wherein: the preset parameterincludes a number of times that the mixing information is updated, aframe number of a frame where the mixing information is updated, andmixing information in the frame where the mixing information is updated.31. The method of claim 24, wherein: the object-based audio contentincludes a plurality of tracks including at least one channel, thepreset parameter further includes a number of the tracks, a number ofthe at least one channel for each of the tracks, and a number of atleast one output channel to output the object-based audio content, andthe mixing information includes mixing information for each of the atleast one output channel.
 32. The method of claim 22, wherein: the mediafile format is in a structure of an ISO base media file format.
 33. Acomputer-readable recording device, running on one or more processors,storing a program for implementing the method according to claim
 22. 34.A computer-readable recording device, running on one or more processors,storing data with a file format structure for an object-based audioservice, comprising: an ftyp box to store standard information of anobject-based audio content; an mdat box to store a plurality of audioobjects that constitute the object-based audio content; and a moov boxto store metadata that presents the stored plurality of audio objects,wherein one or more preset parameters with respect to an attribute of atleast one preset associated with playing of the object-based audiocontent and the plurality of audio objects are stored in any one of theftyp box and the moov box.
 35. The computer-readable recording device ofclaim 34, wherein: the moov box includes a first box defined in the moovbox and a second box defined in the first box, the preset parameterincludes a first preset parameter and a second preset parameter, and thefirst preset parameter includes at least one of a number of the at leastone preset and a preset ID of any one preset of the at least one preset,and the first preset parameter is stored in the first box, and thesecond preset parameter is stored in the second box.
 36. Thecomputer-readable recording device of claim 34, wherein: the presetparameter includes mixing information about the plurality of audioobjects, and the mixing information includes at least one of volumeinformation about each of the audio objects and equalization informationabout each of the audio objects.
 37. The computer-readable recordingdevice of claim 36, wherein: preset parameter further includes presetglobal volume information about the plurality of audio objects.
 38. Thecomputer-readable recording device of claim 36, wherein: theequalization information includes a number of frequency bands to beapplied with equalization, a center frequency of each of the frequencybands, a bandwidth of each of the frequency bands, and a frequency gainvalue in each of the frequency bands.
 39. The computer-readablerecording device of claim 37, wherein: the volume information includes avolume gain value between an input volume value of each of the audioobjects and an output volume value of each of the audio objects, and thevolume gain value and the frequency gain value are expressed using apercentage or decibel (dB).
 40. The computer-readable recording deviceof claim 36, wherein: the object-based audio content includes aplurality of frames that are sequentially played, and the mixinginformation is updated as the plurality of frames is played.
 41. Thecomputer-readable recording device of claim 40, wherein: the presetparameter includes reference mixing information in a reference frameamong the plurality of frames, and a difference between the referencemixing information and mixing information in the remaining framesexcluding the reference frame from the plurality of frames.
 42. Thecomputer-readable recording device of claim 40, wherein: the pluralityof frames is classified into a plurality of frame groups including afirst frame group and a second frame group that are adjacent to eachother, and when first group mixing information about the first framegroup is different from second group mixing information about the secondframe group, the preset parameter includes the first group mixinginformation, the second group mixing information, first flag informationindicating that the first group mixing information is different from thesecond group mixing information, and a number of frames included in eachof the frame groups, and when the first group mixing information is thesame as the second group mixing information, the preset parameterincludes the first group mixing information, second flag informationindicating that the first group mixing information is the same as thesecond group mixing information, and the number of frames included ineach of the frame groups.
 43. The computer-readable recording device ofclaim 40, wherein: the preset parameter includes a number of times thatthe mixing information is updated, a frame number of a frame where themixing information is updated, and mixing information in the frame wherethe mixing information is updated.
 44. The computer-readable recordingdevice of claim 36, wherein: the object-based audio content includes aplurality of tracks including at least one channel, the preset parameterfurther includes a number of the tracks, a number of the at least onechannel for each of the tracks, and a number of at least one outputchannels to output the object-based audio content, and the mixinginformation includes mixing information for each of the at least oneoutput channel.
 45. The computer-readable recording device of claim 34,wherein: the file format structure is in a structure of an ISO basemedia file format.
 46. A computer-readable recording device, running onone or more processors, storing a program for implementing the methodaccording to claim 1.